home *** CD-ROM | disk | FTP | other *** search
/ MacPeople 1998 #2 / MACPEOPLE-1998-NO2.ISO / アップル関連 / ARA PS アップデート / モデム用 / ARA 2.0 用 GV PP PC Card / ARA 2.0 óp GV PP PC Card next >
Text File  |  1996-03-06  |  9KB  |  462 lines

  1. !  Global Village Teleport Gold & Powerport Gold  6/29/93  KW
  2. !
  3. !  'mlts' resource info for this modem:
  4. !    byte 1 == 01 -> modem HAS builtin reliability protocols
  5. !    byte 2 == 00 -> reserved by Apple
  6. !    byte 3 == 21 -> max hex chars in varstr 7 (33 dec)
  7. !    byte 4 == 21 -> max hex chars in varstr 8
  8. !    byte 5 == 21 -> max hex chars in varstr 9
  9. !    
  10. !    29Aug93    rhoiberg    Changed all commands to capitals.  Stop using the SBreak command
  11. !                        it seems to be wedging the modems.  Change &D0 to &D3.  Clean up the Hangup command 
  12. !                        and make the +++ sequence work when on line.  Turn off answer in hangup by 
  13. !                        setting S0=0 in @HANGUP.
  14. ! 02/14/94 SAP Changes to work with all GV Modems except TP BronzeII 
  15. !              PP Bronze
  16. !
  17. !     2jun94    rhoiberg    Moved the userhook 1 from when a ring happens to when it 
  18. !                        really gets connected.  This fixes the bug where a fax is received
  19. !                        and the serial port is marked as busy and can no longer be used.
  20. ! 12/02/94 SAP Made changes to support Platinum
  21. ! 01/05/94 crw Made changes to support fax/ARA discrimination
  22. ! 08/08/95 DEJ Added support for Japanese & French blacklisting requirements
  23. ! 08/25/95 DEJ Translated to Japanese.
  24. ! 09/17/95 JST Added hardware handshaking from JC.
  25. ! 09/20/95 JST Added support for PP Gold from JC.
  26. !
  27. @ORIGINATE
  28. @ANSWER
  29. !
  30. ! set up the modem - label range is 1-10
  31. !
  32. ! Mac talks to the modem at 19,200 bps.  
  33. serreset 19200, 0, 8, 1
  34. !
  35. ! reset the serial port
  36. HSReset 0 1 0 0 0 1
  37. settries 0
  38. @LABEL 1
  39. ifANSWER 3                    
  40. !
  41. ! Mac talks to the modem at 57,600 bps.
  42. serreset 57600, 0, 8, 1            
  43. !
  44. @LABEL 3
  45. matchclr
  46. matchstr 1 121 "OK¥13¥10"
  47. ! &F1  - recall factory settings
  48. ! W2  - Connect result code reports modem speed
  49. ! S7=60 - To allow for an international call
  50. ! S0=0 - Don't answer calls
  51. ! E0   - Turn command echo off
  52. ! ¥N0 - Enter normal mode (no reliability protocols)
  53. write "AT&F1W2S7=60S0=0E0¥¥N0¥13"
  54. matchread 30
  55. inctries
  56. iftries 2 71
  57. !
  58. ! Reset the Modem
  59. !
  60. flush
  61. jump 1
  62. !
  63. @LABEL 121
  64. settries 0
  65. matchclr
  66. matchstr 1 4 "OK¥13¥10"
  67. matchstr 2 4 "ERROR¥13¥10"
  68. write "ATS210=5¥13"
  69. matchread 30
  70. !
  71. !
  72. @LABEL 4
  73. ! Modem responding & configured.
  74. ! determine if reliable link is requested.
  75. !
  76. ! if modem mnp10 link requested (var 4 == 2) then jump label 5
  77. ifstr 4 5 "2"
  78. !
  79. ! if no modem v42 link requested (var 4 == 0) [same as ARA 1.0] then jump label 9
  80. ifstr 4 9 "0"
  81. !
  82. ! else invalid value in var 4; exit w/error
  83. jump 76
  84. !
  85. @LABEL 5
  86. ! use this label for mnp 10 type stuff...
  87. ! THIS modem doesn't support mnp 10 links.
  88. jump 9
  89. !
  90. @LABEL 9
  91. ! If speaker on flag is true, jump to label 13.  Else turn off the speaker.
  92. ifstr 2 13 "1"
  93. pause 5
  94. matchclr
  95. matchstr 1 13 "OK¥13¥10"
  96. write "ATM0¥13"
  97. matchread 30
  98. jump 71
  99. !
  100. ! modem ready, so enable answering or originate a call - label range is 11-30
  101. !
  102. @LABEL 13
  103. pause 5
  104. ifANSWER 62
  105. !
  106. ! if normal dialing (parm 6 == 0) jump to 19
  107. ifstr 6 19 "0"
  108. !
  109. ! if blind dialing (parm 6 == 1) jump to 17
  110. ifstr 6 17 "1"
  111. !
  112. ! if manual dialing (parm 6 == 2) jump to 15 
  113. ifstr 6 15 "2"
  114. !
  115. ! else invalid value in var 6; exit w/error
  116. jump 76
  117. !
  118. @label 15
  119. note "手動ダイヤル開始" 3
  120. ! X1 to ignore dialtone & busy for manual dialing, D to dial
  121. write "ATX1D ¥13"
  122. jump 32
  123. !
  124. @label 17
  125. note "トーンなしダイヤル中..." 3
  126. matchclr
  127. matchstr 1 19 "OK¥13¥10"
  128. ! X1 to ignore dialtone & busy for blind dialing
  129. write "ATX1¥13"
  130. matchread 30
  131. jump 71
  132. !
  133. @label 19
  134. ! this is where we break up long dialstrings
  135. !
  136. ! parm 1 is always the full dialstring from the conn doc
  137. note "^1 をダイヤル中..." 3
  138. ! parm 3 is always "p" for pulse & "t" for tone
  139. !
  140. ! if parm 8 == blank (complete dialstring in parm 7)
  141. !  then jump to label 27 & dial parm 7
  142. ifstr 8 27 " "
  143. !
  144. ! if parm 9 == blank (complete dialstring in parms 7 & 8)
  145. !  then jump to label 24 & dial parm 7 & 8
  146. ifstr 9 24 " "
  147. !
  148. !  else dial parm 7 & 8 & 9 (complete dialstring in parms 7, 8 & 9)
  149. matchclr
  150. matchstr 1 21 "OK¥13¥10"
  151. ! parm 7 holds first string fragment
  152. write "ATD^3^7;¥13"
  153. matchread 400
  154. ! modem not responding; bailout.
  155. jump 71
  156. @label 21
  157. ! parm 8 holds second string fragment
  158. matchclr
  159. matchstr 1 22 "OK¥13¥10"
  160. write "ATD^3^8;¥13"
  161. matchread 400
  162. ! modem not responding; bailout.
  163. jump 71
  164. @label 22
  165. ! parm 9 holds last string fragment
  166. write "ATD^3^9¥13"
  167. jump 32
  168. !
  169. @label 24
  170. matchclr
  171. matchstr 1 25 "OK¥13¥10"
  172. ! parm 7 holds first string fragment
  173. write "ATD^3^7;¥13"
  174. matchread 400
  175. ! modem not responding; bailout.
  176. jump 71
  177. @label 25
  178. ! parm 8 holds last string fragment
  179. write "ATD^3^8¥13"
  180. jump 32
  181. !
  182. @label 27
  183. ! parm 7 holds entire string
  184. write "ATD^3^7¥13"
  185. jump 32
  186. !
  187. !    connecting - label range is 31-60
  188. !
  189. @LABEL 32
  190. matchclr
  191. matchstr 1  34 "CONNECT 1200¥13¥10"
  192. matchstr 2  35 "CONNECT 2400¥13¥10"
  193. matchstr 3  36 "CONNECT 4800¥13¥10"
  194. matchstr 4  37 "CONNECT 7200¥13¥10"
  195. matchstr 5  38 "CONNECT 9600¥13¥10"
  196. matchstr 6  39 "CONNECT 12000¥13¥10"
  197. matchstr 7  40 "CONNECT 14400¥13¥10"
  198. matchstr 8  41 "CONNECT 16800¥13¥10"
  199. matchstr 9  42 "CONNECT 19200¥13¥10"
  200. matchstr 10 43 "CONNECT 21600¥13¥10"
  201. matchstr 11 44 "CONNECT 24000¥13¥10"
  202. matchstr 12 45 "CONNECT 26400¥13¥10"
  203. matchstr 13 46 "CONNECT 28800¥13¥10"
  204. matchstr 14 50 "RING¥13¥10"
  205. matchstr 15 51 "FAX¥13¥10"
  206. matchstr 16 53 "DATA¥13¥10"
  207. matchstr 17 72 "NO DIALTONE¥13¥10"
  208. matchstr 18 73 "NO CARRIER¥13¥10"
  209. matchstr 19 73 "ERROR¥13¥10"
  210. matchstr 20 74 "BUSY¥13¥10"
  211. matchstr 21 75 "NO ANSWER¥13¥10"
  212. matchstr 22 77 "DELAYED  00:02:"
  213. matchstr 23 78 "DELAYED  00:01:"
  214. matchstr 24 79 "DELAYED  00:00:"
  215. matchstr 25 80 "BLACKLISTED¥13¥10"
  216. matchread 700
  217. ifANSWER 32
  218. jump 71
  219. !
  220. !  THIS v32b modem has been setup to do duplex cts/rts handshaking,
  221. !  and we assume that a cts/rts handshaking cable is being used,
  222. !  so we leave the serial port set to 19,200 bps.
  223. !  
  224. !  in a v32 or v22b modem, we assume the lower data rate won't require
  225. !  cts/rts handshaking.  
  226. !
  227. @LABEL 34
  228. note "1200 bpsで通信中。" 2
  229. CommunicatingAt 1200
  230. jump 58
  231. !
  232. @LABEL 35
  233. note "2400 bpsで通信中。" 2
  234. CommunicatingAt 2400
  235. jump 58
  236. !
  237. @LABEL 36
  238. note "4800 bpsで通信中。" 2
  239. CommunicatingAt 4800
  240. jump 58
  241. !
  242. @LABEL 37
  243. note "7200 bpsで通信中。" 2
  244. CommunicatingAt 7200
  245. jump 58
  246. !
  247. @LABEL 38
  248. note "9600 bpsで通信中。" 2
  249. CommunicatingAt 9600
  250. jump 58
  251. !
  252. @LABEL 39
  253. note "12000 bpsで通信中。" 2
  254. CommunicatingAt 12000
  255. jump 58
  256. !
  257. @LABEL 40
  258. note "14400 bpsで通信中。" 2
  259. CommunicatingAt 14400
  260. jump 58
  261. !
  262. @LABEL 41
  263. note "16800 bpsで通信中。" 2
  264. CommunicatingAt 16800
  265. jump 58
  266. !
  267. @LABEL 42
  268. note "19200 bpsで通信中。" 2
  269. CommunicatingAt 19200
  270. jump 58
  271. !
  272. @LABEL 43
  273. note "21600 bpsで通信中。" 2
  274. CommunicatingAt 21600
  275. jump 58
  276. !
  277. @LABEL 44
  278. note "24000 bpsで通信中。" 2
  279. CommunicatingAt 24000
  280. jump 58
  281. !
  282. @LABEL 45
  283. note "26400 bpsで通信中。" 2
  284. CommunicatingAt 26400
  285. jump 58
  286. !
  287. @LABEL 46
  288. note "28800 bpsで通信中。" 2
  289. CommunicatingAt 28800
  290. jump 58
  291. !
  292. !
  293. @LABEL 50
  294. ifORIGINATE 32
  295. note "電話応答中..."        
  296. jump 32
  297. !
  298. @LABEL 51                        
  299. note "ファクス呼び出し応答中..."
  300. matchclr
  301. matchstr 1 52 "CONNECT¥13¥10"    
  302. matchread 100                    
  303. jump 71                            
  304. !
  305. @LABEL 52
  306. settries 1225                    
  307. sbreak                            
  308. pause 80                        
  309. note "ファクス呼び出しを受信しましたが応答できませんでした。"
  310. settries 0
  311. jump 109                        
  312. !
  313. @LABEL 53                        
  314. serreset 57600, 0, 8, 1            
  315.                                 
  316. write "ATO¥13"                
  317. jump 32                            
  318. !
  319. !
  320. @LABEL 58
  321. pause 50
  322. ! turn on cts handshaking.
  323. HSReset 0 1 0 0 0 1
  324. !
  325. pause 30
  326. exit 0
  327. !
  328. ! @ANSWER
  329. ! Set the modem to answer on 1st ring - label range is 61-70
  330. !
  331. @LABEL 62
  332. matchclr
  333. matchstr 1 32 "OK¥13¥10"
  334. matchstr 2 63 "ERROR¥13¥10"
  335. write "AT+FAE=1S0=1¥13"            
  336. matchread 30
  337. !
  338. @LABEL 63
  339. matchclr
  340. matchstr 1 32 "OK¥13¥10"
  341. write "ATS0=1¥13"                
  342. matchread 30
  343. jump 71
  344. !
  345. ! error messages - label range is 71-100
  346. !
  347. ! Modem Not Responding
  348. @LABEL 71
  349. exit -6019
  350. !
  351. ! No Dial Tone
  352. @LABEL 72
  353. exit -6020
  354. !
  355. ! No Carrier or Error
  356. @LABEL 73
  357. exit -6021
  358. !
  359. ! Busy
  360. @LABEL 74
  361. exit -6022
  362. !
  363. ! No Answer
  364. @LABEL 75
  365. exit -6023
  366. !
  367. ! varstring invalid value
  368. @LABEL 76
  369. exit -6027
  370. ! Delayed and Blacklisting feedback
  371. ! Delayed 3 minutes
  372. @LABEL 77
  373. note "'DELAYED'. 3分後に再ダイヤルします。"
  374. pause 600
  375. jump 78
  376. ! Delayed 2 minutes
  377. @LABEL 78
  378. note "'DELAYED'. 2分後に再ダイヤルします。"
  379. pause 600
  380. jump 79
  381. ! Delayed 1 minute
  382. @LABEL 79
  383. note "'DELAYED'. 1分後に再ダイヤルします。"
  384. pause 600
  385. jump 1
  386. ! Blacklisted
  387. @LABEL 80
  388. exit -6019 "'BLACKLISTED'. 電話番号が間違っているかもしれません。まず電話番号を確かめ、モデムの電源をいったん切り再び電源を入れ、もう一度その番号をかけなおしてください。"
  389. ! Hang up the modem - label range is 101-120
  390. !
  391. @HANGUP
  392. iftries 1225 114                
  393. !
  394. ! serreset 19200, 0, 8, 1        
  395. HSReset 0 1 0 0 0 1
  396. @LABEL 105
  397. !
  398. ! Try to get control of the modem.
  399. !
  400. DTRSet
  401. pause 5
  402. DTRClear
  403. flush
  404. !
  405. @LABEL 108
  406. flush
  407. matchclr
  408. matchstr 1 111 "NO CARRIER¥13¥10"
  409. matchstr 2 111 "OK¥13¥10"
  410. matchstr 3 111 "ERROR¥13¥10"
  411. matchstr 4 111 "DELAYED"
  412. matchstr 5 111 "BLACKLISTED¥13¥10"
  413. write "ATH¥13"
  414. matchread 30
  415. inctries
  416. iftries 3 71
  417. flush
  418. !
  419. @LABEL 109
  420. matchclr
  421. matchstr 1 115 "OK¥13¥10"
  422. write "+++"
  423. matchread 15
  424. jump 108
  425. !
  426. ! recall the factory settings.
  427. !
  428. @LABEL 111
  429. pause 15
  430. matchclr
  431. matchstr 1 114 "OK¥13¥10"
  432. matchstr 2 112 "ERROR¥13¥10"
  433. write "AT&F1S0=0¥13"            
  434. matchread 30
  435. jump 71
  436. !
  437. @LABEL 112
  438. matchclr
  439. matchstr 1 114 "OK¥13¥10"
  440. write "AT&FS0=0¥13"
  441. matchread 30
  442. jump 71
  443. !
  444. @LABEL 114
  445. exit 0
  446.  
  447. @LABEL 115
  448. pause 50
  449. jump 108
  450.  
  451. !
  452. ! labels 122-128 are reserved for future emergency hacks
  453. !
  454.